#pragma once
#include "types.hpp"
#include <opencv2/opencv.hpp>


class Target
{
public:
    Target();
    Target(Point3d targetCenter, Vec3d targetNormal, cv::Mat targetImage, double sizeScale);
public:
    Point3d targetCenter;
    Vec3d targetNormal;
    cv::Mat targetImage;
    double sizeScale;       // real size (m) / pixel size (pixel)
};


Target::Target()
{
    targetCenter = Point3d::Point3(0,0,3);
    targetNormal = Vec3d::Point3(0,0,-1);
    sizeScale = 0.2;
    targetImage = cv::Mat::ones(1,1,CV_64F);
}


Target::Target(Point3d targetCenter, Vec3d targetNormal, cv::Mat targetImage, double sizeScale)
{
    this->targetCenter = targetCenter;
    this->targetNormal = targetNormal;
    this->targetImage = targetImage;
    this->sizeScale = sizeScale;
}

